#!/bin/bash
:<<!
函数的定义格式：
[ function ] fun name [()]
{
  action;
  [return int;]
}
note:
1.可以带function fun()定义，也可以直接fun()定义，不带任何参数。
2.参数返回，可以显示加：return返回，如果不加，将以最后一条命令运行结果，作为返回值。
return后跟数值n(0-255)
!
demoFun(){
  echo "hello！ shell"
}
echo "---函数开始执行---"
demoFun
echo "---函数执行完毕---"

# 带有return语句的函数
funWithReturn(){
  a=10
  return $a
}
funWithReturn
echo $?

# 函数参数
# 在函数体内部，通过$n的形式来获取参数的值
fun_with_param(){
  echo "参数1：$1"
}
fun_with_param 123
:<<!
$10 不能获取第十个参数，获取第十个参数需要${10},当n>=10时，需要使用${n}的形式来获取参数的值
$# 传递到脚本或函数的参数个数
$* 以一个单字符串显示所有向脚本传递的参数
$$ 脚本运行的当前进程ID号
$! 后台运行的最后一个进程的ID号
$@ 与$*相同，但是使用时加引号，并在引号中返回每个参数
$- 显示shell使用的当前选项，与set命令功能相同
$? 显示最后命令的退出状态。0表示没有错误，其他任何值表明有错误
!
